A mechanical apparatus designed based on the electrical and magnetic engineering to mimic human movements is called “robot”. The term “robot” is said to have been derived from a Slavic word “ROBOTA (slave machine)”. In Japan, the robots have become more widely prevalent at the end of 1960s. Many of such robots were industrial ones such as the manipulators and conveyance robots destined for automation and unmanning of the production operations in factories.
The recent researches and developments of the legged locomotive robots designed to have the physical mechanism and movements of bipedal upright-walking animals such as human beings, monkeys, etc., and it is more and more expected that such legged locomotive robots can be used in the practical applications. The bipedal movement in an upright posture is more unstable and difficult to control in attitude and walking than the movements on crawlers, four or six feet. However, the bipedal upright movement is more advantageous in the flexible movement over irregular ground surfaces, irregular access routes on which there exist obstacles, and stepped surfaces such as a stepway or ladder.
Also, the legged locomotive robots designed to implement the biological mechanism and movements of the human being is generally called “humanoid robot”. The humanoid robot can support the human activity in the residential environment and other daily life, for example.
Almost all the human working spaces and dwelling spaces are defined for compliance with the body mechanism and behavior of the human being making bipedal upright-walking, and thus have many barriers against the current mechanical systems using wheels or any other driving devices as the moving means. Therefore, to work for the human beings and also for a further acceptability in the human dwelling spaces, the mechanical systems or robots should desirably be able to move in nearly the same range as the human moving range. It is considerably expected just in this respect that the practical applicability of the robots can be attained.
The significance of the research and development of the legged locomotion robots making bipedal upright-walking, called “humanoid robot” will further be described below from the following two points of view, for example.
One of the viewpoints stands on the human science. That is, a robot designed to have a structure similar to the lower limb and/or upper limb of the human body is controlled in various manners to simulate the walking of the human being. By the engineering through such processes, it is possible to elucidate the mechanism of the human being's natural movements including the walking. The results of such researches will also have a great contribution to the advances of various other fields of researches dealing with the movement mechanism, such as the human engineering, rehabilitation engineering, sports science, etc.
The other viewpoint is the development of practical robots capable of supporting the human life as a partner to the human being, namely, capable of helping the human being in activities in the residential environment and various other daily life situations. For the practical application of the robots of this type, they should be designed to grow up in functional respects by learning, while being taught by the users, the addressing to the human beings different in personality from each other or to different environments in various aspects of the human life environment. The “humanoid” robots are considered to effectively perform well for smooth communications with the human being.
Assume here that the robot is taught in practice to learn how to pass through a room while getting around an obstacle it should never step on. In this case, the user (worker) will be able to teach a bipedal upright-walking robot similar in figure to himself or herself with rather greater ease than a crawler type or quadrupedal robot whose figure is quite different from that of the user, and also the bipedal upright-walking robot itself will be able to learn more easily (refer to “Control of bipedal walking robots”, Takanishi, “(Kouso)”, Kantoh Branch of the Japan Automobile Technology Association, No. 25, Apr. 1996).
There have already been proposed many techniques for attitude control and stable walking of the bipedal legged locomotion robots. The “stable walking” referred to herein may be defined as “movement on feet without falling”.
The control of the robot to take a stable attitude is very important to prevent the robot from falling. The “falling” means an interruption of a job the robot has been doing. The robot will take considerable labor and time to recover its upright position from the tipping condition and resume the job. Also, the falling will possibly cause a critical damage to the robot itself and also to an object with which the robot has collided in falling. Therefore, the control of the robot to take a stable posture in walking or working is one of the most important technical problems in designing and development of a legged locomotion robot.
When the robot is walking, an acceleration developed with the gravity and walking movement will cause a gravity and inertial force from the moving system of the robot and their moments to act on the walking surface. According to the so-called d'Alembert's principle, the gravity, inertial force and their moments will be balanced with a floor reaction force as a reaction of the walking surface to the walking system and its moment. The consequence of this dynamical deduction is such that on or inside the sides of a supporting polygon defined by a point the foot sole touches and walking surface, there exists a point where the pitch and rolling-axis moment are zero, that is, a zero-moment point (ZMP).
Many proposals of the control of the legged locomotion robot to take a stable posture and prevention of the robot from falling while walking adopt the ZMP as a criterion for determination of walking stability. Creating a bipedal-walking pattern with reference to the ZMP is advantageous in permitting to preset points the foot sole will touch and easily consider toe-movement controlling conditions corresponding to the geometry of a walking surface. Also, since adopting a ZMP as the walking stability criterion leads to taking a trajectory, not any force, as the target value of movement control, so it is technically more feasible. It should be noted that the concept of the ZMP and adoption of the ZMP as a criterion for stability determination of a walking robot is disclosed in “Legged Locomotion Robots”, Miomir Vukobratovic.
Generally, the bipedal walking robot such as “humanoid robot” has its center of gravity in a position higher than any quadrupedal walking robot, and it has a narrower ZMP region in which a ZMP is stable in walking. Therefore, the problem of posture change due to a change of the walking surface is important especially for the bipedal walking robot.
There have already been made some proposals to use a ZMP as a criterion for determination of the posture stability of bipedal walking robots.
For example, the Japanese Patent Application Laid-Open No. H05-305579 discloses a legged locomotion robot in which an on-surface point where a ZMP is zero is made to coincide with the target value of attitude control for stable walking.
Also, the Japanese Patent Application Laid-Open No. H05-305581 discloses a legged locomotion robot designed for a ZMP to exist inside a supporting polygon or in a position where there is at least a predetermined margin from the end of a supporting polygon when the foot sole touches and leaves a walking surface. Since the ZMP keeps the predetermined margin even when the robot is applied with a disturbance, so the robot can walk with an improved stability.
Also, the Japanese Published Patent Application Laid-Open No. H05-305583 disclosed a legged locomotion robot in which the moving speed is controlled according to the target position of a ZMP. More specifically, preset walking pattern data is used to drive the leg joints for the ZMP to coincide with the target position, an inclination of the robot's upper body is detected, and the spit-out rate of the preset walking pattern data is changed correspondingly to the detected inclination. When the robot stepping on unknown irregularities tilts forward, the normal posture can be recovered by increasing the data spit-out rate. Also, since the ZMP is controlled to its target value, the data spit-out rate can be changed without any trouble while the robot is supported on both feet.
Also, the Japanese Published Patent Application Laid-Open No. H05-305585 disclosed a legged locomotion robot in which the position the foot sole touches is controlled according to a ZMP target position. More specifically, the disclosed legged locomotion robot can walk stably by detecting a displacement between the ZMP target position and measured position and driving one or both of the legs so that the displacement is canceled, or detecting a moment about the ZMP target position and driving the legs so that the moment becomes zero.
Also, the Japanese Published Patent Application Laid-Open No. H05-305586 discloses a legged locomotion robot of which inclined attitude is controlled according to a ZMP target position. More particularly, the robot walks stably by detecting a moment, if any, developed about the ZMP target position, and driving the legs so that the moment becomes zero.
Basically, in controlling the robot to take a stable posture with the use of a ZMP as the stability criterion, there is searched a point existing on or inside the sides of a supporting polygon defined by a point the foot sole touches and walking surface and where the moment is zero.
More specifically, a ZMP equation descriptive of a balanced relation between moments applied to the robot body is derived and the target trajectory of the robot is corrected to cancel a moment error appearing in the ZMP equation.
For formulating a ZMP equation, it is necessary to determine a position and acceleration of a controlled-object point on the robot. In many of the conventional robot control systems using a ZMP as a stability criterion, a ZMP equation is derived by calculating acceleration data through two-step differentiation of the position data in the control system with data on the position of the controlled-object point being taken as sensor input.
In case only the above calculation based on the ZMP equation is used for controlling the robot to take a stable posture, the amount of calculation is larger, the load of data processing is larger and thus a longer time is required for the calculation. Further, since acceleration data is indirectly acquired, it cannot be accurate and thus it is difficult for the robot to implement an action for which the robot trajectory has to be corrected quickly and real-time, such as jump or running. Also, for a strict control of the robot posture, a plurality of controlled-object points should desirably be set on the robot. In this case, however, the data calculation will take an excessively long time, which will lead to an increased cost of manufacturing.
It is assumed here that the movement of the mobile machines including the legged robot is strictly controlled according to a ZMP equation, for example. In this case, the most strict control of the robot movement will be attained by controlling the position and acceleration of each point on the robot with measurement of an acceleration in a world coordinate of the origin of a local coordinate, position (posture) and acceleration of each point on the robot in the local coordinate, ZMP position, external force and external force moment, and introduction of the measured values in the ZMP equation to identify an unknown external force moment and external force.
The robot movement can be controlled with a minimum number of sensors including a clinometer (or accelerometer) and gyro provided on each axis (pitch, roll and yaw (X, Y and Z)) and six axial-force sensors disposed each at a point it is expected an external force and external force moment are applied to and which is apart from an actual position of action.
However, with the control system adopting the above arrangement of the sensors, it is difficult to control the robot movement by directly measuring positions and accelerations of all points on the robot in addition to the acceleration of the origin of the local coordinate.
The conventional robot movement control systems are based on the assumptions that:
(1) The external environment surrounding the robot will not change even if the robot is applied with any force and torque.
(2) The friction coefficient for a translation in the external environment surrounding the robot is large enough not to cause any slipping.
(3) The robot will not be deformed even if it is applied with any force and torque.
Therefore, on a gravel road whose surface will move when applied with a force and torque, a thick-piled carpet or on a tile floor in a house, slippery with no sufficient friction coefficient for translation, namely, in case the above assumptions are not assured, the conventional robot designed with a consideration given to the flexibility of the robot structure itself to implement a whole-body movement including a stable walking (movement) and jump will not perform well so long as its movement control system is based on the above assumptions.